home *** CD-ROM | disk | FTP | other *** search
/ Scene Storm / Scene Storm - Volume 1.iso / coding / asm / demos / vectors_hiddenline / hw.s < prev    next >
Text File  |  1980-01-03  |  5KB  |  291 lines

  1. ;
  2. ;  Hardware Regs.......
  3. ;
  4. custom    EQU   $dff000
  5.  
  6. bltddat    EQU   $000
  7. dmaconr    EQU   $002
  8. vposr    EQU   $004
  9. vhposr    EQU   $006
  10. dskdatr    EQU   $008
  11. joy0dat    EQU   $00A
  12. joy1dat    EQU   $00C
  13. clxdat    EQU   $00E
  14.  
  15. adkconr    EQU   $010
  16. pot0dat    EQU   $012
  17. pot1dat    EQU   $014
  18. potgor    EQU   $016
  19. serdatr    EQU   $018
  20. dskbytr    EQU   $01A
  21. intenar    EQU   $01C
  22. intreqr    EQU   $01E
  23.  
  24. dskpt    EQU   $020
  25. dsklen    EQU   $024
  26. dskdat    EQU   $026
  27. refptr    EQU   $028
  28. vposw    EQU   $02A
  29. vhposw    EQU   $02C
  30. copcon    EQU   $02E
  31. serdat    EQU   $030
  32. serper    EQU   $032
  33. potgo    EQU   $034
  34. joytest    EQU   $036
  35. strequ    EQU   $038
  36. strvbl    EQU   $03A
  37. strhor    EQU   $03C
  38. strlong    EQU   $03E
  39.  
  40. bltcon0    EQU   $040
  41. bltcon1    EQU   $042
  42. bltafwm    EQU   $044
  43. bltalwm    EQU   $046
  44. bltcpth    EQU   $048
  45. bltcptl EQU   $04A
  46. bltbpth    EQU   $04C
  47. bltbptl EQU   $04E
  48. bltapth    EQU   $050
  49. bltaptl EQU   $052
  50. bltdpth    EQU   $054
  51. bltdptl EQU   $056
  52. bltsize    EQU   $058
  53.  
  54. bltcmod    EQU   $060
  55. bltbmod    EQU   $062
  56. bltamod    EQU   $064
  57. bltdmod    EQU   $066
  58.  
  59. bltcdat    EQU   $070
  60. bltbdat    EQU   $072
  61. bltadat    EQU   $074
  62.  
  63. dsksync    EQU   $07E
  64.  
  65. cop1lc    EQU   $080
  66. cop2lc    EQU   $084
  67. copjmp1    EQU   $088
  68. copjmp2    EQU   $08A
  69. copins    EQU   $08C
  70. diwstrt    EQU   $08E
  71. diwstop    EQU   $090
  72. ddfstrt    EQU   $092
  73. ddfstop    EQU   $094
  74. dmacon    EQU   $096
  75. clxcon    EQU   $098
  76. intena    EQU   $09A
  77. intreq    EQU   $09C
  78. adkcon    EQU   $09E
  79. aud0lch    equ    $0a0
  80. aud0lcl    equ    $0a2
  81. aud0len    equ    $0a4
  82. aud0per    equ    $0a6
  83. aud0vol    equ    $0a8
  84. aud0dat    equ    $0aa
  85. aud1lch    equ    $0b0
  86. aud1lcl    equ    $0b2
  87. aud1len    equ    $0b4
  88. aud1per    equ    $0b6
  89. aud1vol    equ    $0b8
  90. aud1dat    equ    $0ba
  91. aud2lch    equ    $0c0
  92. aud2lcl    equ    $0c2
  93. aud2len    equ    $0c4
  94. aud2per    equ    $0c6
  95. aud2vol    equ    $0c8
  96. aud2dat    equ    $0ca
  97. aud3lch    equ    $0d0
  98. aud3lcl    equ    $0d2
  99. aud3len    equ    $0d4
  100. aud3per    equ    $0d6
  101. aud3vol    equ    $0d8
  102. aud3dat    equ    $0da
  103.  
  104. bpl1pth    EQU   $0E0
  105. bpl1ptl    EQU   $0E2
  106. bpl2pth    EQU   $0E4
  107. bpl2ptl    EQU   $0E6
  108. bpl3pth    EQU   $0E8
  109. bpl3ptl    EQU   $0EA
  110. bpl4pth    EQU   $0EC
  111. bpl4ptl    EQU   $0EE
  112. bpl5pth    EQU   $0F0
  113. bpl5ptl    EQU   $0F2
  114. bpl6pth    EQU   $0F4
  115. bpl6ptl    EQU   $0F6
  116.  
  117. bplcon0    EQU   $100
  118. bplcon1    EQU   $102
  119. bplcon2    EQU   $104
  120. bpl1mod    EQU   $108
  121. bpl2mod    EQU   $10A
  122.  
  123. bpldat    EQU   $110
  124.  
  125. spr0pth    EQU   $120
  126. spr0ptl EQU   $122
  127. spr1pth EQU   $124
  128. spr1ptl EQU   $126
  129. spr2pth    EQU   $128
  130. spr2ptl EQU   $12A
  131. spr3pth EQU   $12C
  132. spr3ptl EQU   $12E
  133. spr4pth    EQU   $130
  134. spr4ptl EQU   $132
  135. spr5pth EQU   $134
  136. spr5ptl EQU   $136
  137. spr6pth    EQU   $138
  138. spr6ptl EQU   $13A
  139. spr7pth EQU   $13C
  140. spr7ptl EQU   $13E
  141.  
  142. spr0pos    EQU   $140
  143. spr1pos    EQU   $148
  144. spr2pos EQU   $150
  145. spr3pos EQU   $158
  146. spr4pos EQU   $160
  147. spr5pos EQU   $168
  148. spr6pos EQU   $170
  149. spr7pos EQU   $178
  150.  
  151. spr0ctl    EQU   $142
  152. spr1ctl    EQU   $14A
  153. spr2ctl EQU   $152
  154. spr3ctl EQU   $15A
  155. spr4ctl EQU   $162
  156. spr5ctl EQU   $16A
  157. spr6ctl EQU   $172
  158. spr7ctl EQU   $17A
  159.  
  160. spr0data EQU  $144
  161. spr1data EQU  $14c
  162. spr2data EQU  $154
  163. spr3data EQU  $15c
  164. spr4data EQU  $164
  165. spr5data EQU  $16c
  166. spr6data EQU  $174
  167. spr7data EQU  $17c
  168.  
  169.  
  170. spr0datb EQU  $146
  171. spr1datb EQU  $14e
  172. spr2datb EQU  $156
  173. spr3datb EQU  $15e
  174. spr4datb EQU  $166
  175. spr5datb EQU  $16e
  176. spr6datb EQU  $176
  177. spr7datb EQU  $17e
  178.  
  179. col0    EQU   $180
  180. col1     EQU   $182
  181. col2    EQU   $184
  182. col3    EQU   $186
  183. col4    EQU   $188
  184. col5    equ   $18a
  185. col6    equ   $18c
  186. col7    equ   $18e
  187. col8    EQU   $190
  188. col9    equ   $192
  189. col10    equ   $194
  190. col11    equ   $196
  191. col12    equ   $198
  192. col13    equ   $19a
  193. col14    equ   $19c
  194. col15    equ   $19e
  195. col16   EQU   $1A0    
  196. col17    equ    $1a2
  197. col18    equ    $1a4
  198. col19    equ    $1a6
  199. col20    equ    $1a8
  200. col21    equ    $1aa
  201. col22    equ     $1ac
  202. col23    equ    $1ae
  203. col24    equ    $1b0
  204. col25    equ    $1b2
  205. col26    equ    $1b4
  206. col27    equ    $1b6
  207. col28    equ    $1b8
  208. col29    equ    $1ba
  209. col30    equ    $1bc
  210. col31    equ    $1be
  211.  
  212. ;
  213. ;Cias....
  214. ;
  215. ciaa     equ     $bfe001
  216. ciab    equ    $bfd000
  217.  
  218. pra    EQU    $0000
  219. prb    EQU    $0100
  220. ddra    EQU    $0200
  221. ddrb    EQU    $0300
  222. talo    EQU    $0400
  223. tahi    EQU    $0500
  224. tblo    EQU    $0600
  225. tbhi    EQU    $0700
  226. todlow    EQU    $0800
  227. todmid    EQU    $0900
  228. todhi    EQU    $0A00
  229. ttsp    EQU    $0C00
  230. icr    EQU    $0D00
  231. cra    EQU    $0E00
  232. crb    EQU    $0F00
  233.  
  234. ;
  235. ;Copper Intruction Macros...
  236. ;
  237. ; Cmove Val,Reg
  238. ; Cwait X,Y
  239. ; Cmwt  X,Y,XM,YM  (7th bit of YM is clear then waits for Blitter
  240. ;            i.e. There's no mask for y bit 7         )
  241. ; Cskip X,Y         (Skip next com if beam past X,Y)
  242. ; Cmskp X,Y,XM,YM  (Same as Cmwt but for Skip...)
  243. ;
  244.  
  245. Cmove    MACRO
  246.     dc.w \2,\1
  247.     ENDM
  248.         
  249. Cwait    MACRO
  250.     dc.w \2<<8!\1!1,$fffe
  251.     ENDM
  252.  
  253. Cmwt    MACRO
  254.     dc.w \2<<8!\1!1,(\4<<8!\3)&$fffe    
  255.     ENDM
  256.  
  257. Cskip     MACRO
  258.     dc.w \2<<8!\1!1,$ffff
  259.     ENDM
  260.  
  261. Cmskp    MACRO
  262.     DC.W \2<<8!\1!1,\4<<8!\3!1
  263.     ENDM
  264.  
  265. ;
  266. ;Blitter macros...
  267. ;
  268.  
  269. Blitwait MACRO
  270. bw_\@    btst #14,dmaconr(a5)
  271.     bne.s bw_\@
  272.     ENDM
  273.  
  274. Nomask    MACRO
  275.     move #$ffff,bltafwm(a5)
  276.     move #$ffff,bltalwm(a5)
  277.     ENDM
  278. ;
  279. ;Misc Macros...
  280. ;
  281.  
  282. CatchVB MACRO
  283. vb1_\@:
  284.     btst #0,vposr+1(a5)
  285.     beq.s vb1_\@
  286. vb2_\@:
  287.     btst #0,vposr+1(a5)
  288.     bne.s vb2_\@
  289.     ENDM
  290.  
  291.